package com.itlaobing.array;

import java.util.Arrays;

/**
 * 1、静态初始化: 声明数组变量时直接为数组赋予初始值(为数组变量赋值、为数组中各个元素赋值)
 *     int[] a = { 1 , 3 , 5 } ;
 *     int[] b = new int[] { 2 , 4 , 6 } ;
 * 2、动态初始化: 数组的声明 和 初始化 是分开的
 * 3、默认值: 对于数组而言，创建数组后由JVM为数组中各个元素赋予的值就是默认值
 * 4、初始值: 通过程序首次主动为数组元素赋予的值就是初始值
 * 5、初始化: 为某个变量赋予初始值的过程就是初始化 ( initialize )
 */
public class ArrayTest2 {

	public static void main(String[] args) {
		
		int[] array; // 声明数组变量
		// System.out.println( array ); // The local variable array may not have been initialized
		
		// Array constants can only be used in initializers
		// array =  { 2 , 4 , 6 , 8 , 10 }; 
		
		// new 负责在 堆( Heap ) 中开辟内存空间
		array = new int[] { 1 , 3 , 5 , 7 , 9 }; // [初始化数组]
		System.out.println( Arrays.toString( array ) );
		
		// int[] x = { 2 , 4 , 6 , 8 , 10 };
		int[] x = new int[5];
		System.out.println( Arrays.toString( x ) );
		
		boolean[] y = new boolean[5] ;
		System.out.println( Arrays.toString( y ) );
		
		char[] c = new char[5];
		System.out.println( Arrays.toString( c ) );
		
		String[] s = new String[5];
		System.out.println( Arrays.toString( s ) );
		
	}

}
